1. Field of the Invention
The present invention relates to a mixed topology data switching system that combines a radial interconnect with a ring interconnect. More particularly, the radial interconnect permits devices to store and retrieve data using a switch, while the ring interconnect permits devices along the ring interconnect to provide notification that data has been stored for retrieval, as well as provide feedback regarding the ability or inability to retrieve such data.
2. Description of the Related Art
Although parallel busses may be advantageously used to convey data among devices, there are limits to the speed with which data may be transmitted. In order to increase the speed with which data is conveyed, previous approaches have typically centered around the use of wide parallel busses. However, as aggregate system bandwidths increase, these wide, long busses become problematic due to high pin counts and capacitance loading. Control pins as well as data pins must typically be provided, further increasing the width of the bus. It would therefore be desirable if the conveyance of data could be optimized while reducing the number of pins required.
Another commonly used data transport system is the ring. For instance, in a token ring, a single token circulates around the ring. In order to send a unit of data, a device must remove this token from the ring and replace it with the data to be transmitted. The permission to transmit rotates around the ring in a round-robin fashion. It is important to note that the ring typically provides only one token. As a result, only one device can transmit data at a given instant.
A drawback common to both parallel busses and rings is that each must be able to accommodate the aggregate of the entire system""s data transfer volume even though only a small subset of the attached devices on these interconnect systems may actually need to be involved in the data transaction. In other words, the data cannot be sent directly to only those interfaces to which the data is addressed. Rather it is broadcast to all nodes on the interconnect system. Accordingly, it would be desirable if a system capable of limiting the distribution of unnecessary data to interfaces on an interconnect scheme could be implemented.
In controlling the flow of network traffic through a switching system, it is often desirable to provide feedback to the source of the data. For instance, although a transmitting device, hereinafter referred to as a xe2x80x9csource device,xe2x80x9d may transmit or forward data to a receiving device, hereinafter referred to as a xe2x80x9cdestination device,xe2x80x9d the destination device may be incapable of handling the data. In these circumstances, the source device is often unaware that the data was not accepted by the destination device, complicating switch management. Common solutions to the problem of switch traffic management have included ensuring that all intended destination devices are xe2x80x9cready to receivexe2x80x9d prior to transmitting data on a ring or bus interconnect, or insisting that each intended destination device send an explicit acknowledgement back to the source device. Both of these approaches result in reduced efficiency of the interconnect scheme. By way of example, in a ring network, such acknowledgment is typically provided in the data frame being transmitted. As another example, in other interconnect schemes, each such device may send a separate acknowledgment, therefore adding to the traffic on the network. Accordingly, it would be desirable if a traffic management scheme were established which could provide such feedback to the source of the data while minimizing traffic management overhead.
According to one embodiment, the present invention combines the use of two data transport methods: a point-to-point radial interconnect and a ring interconnect. The radial interconnect connects interface devices to each other through the services of a central switch device to permit the transport of data. Typically, a single interface has a single dedicated radial interconnect to the central switch. These interface devices are further connected to one another via a ring interconnect to convey retrieval notifications regarding forwarding of the data (by source devices) and receipt of the data (by destination devices).
Each radial interconnect provides a narrow, high baud-rate connection to convey the actual data from and to the associated interface without being burdened by the unrelated traffic for the remaining interfaces in the system. This is accomplished through the use of a central switch device, which stores and retrieves data for the various interfaces in the system. As will be apparent from the following description, this architecture provides numerous advantages over a wide parallel bus or ring.
The ring interconnect may be used to convey a xe2x80x9cretrieval notificationxe2x80x9d (i.e., retrieval message) that may be observed by all potential retrieving interfaces. The retrieval notification notifies specific devices (xe2x80x9cdestination devicesxe2x80x9d) or interfaces that one or more frames addressed to them are available from the switch device. Moreover, the ring interconnect permits each destination device to provide feedback to the source device letting the source know whether the destination has accepted the notification provided by the source device and therefore whether the destination can retrieve the data intended for it. The feedback is particularly useful in buffer management applications. In this manner, an efficient and flexible data transport and retrieval notification system that includes a feedback path to the source of the data is provided.
According to one aspect of the invention, a message protocol for controlling the interaction among the interfaces and the switch is provided. Through this protocol, control information is provided in the form of messages rather than through control pins. The control information provided in the messages varies with the purpose of the message. For instance, an access message used by an interface or switch to access (e.g., read or write) a memory location (e.g., register) will include and therefore convey different control information than that of a frame storage message indicating that data has been received and stored by the switch.
In order to send data to the switch, it is desirable to specify control information associated with the data. As one example, it is particularly useful in the mixed topology data switching system disclosed herein to convey control information to the switch to enable the switch to store and retrieve the data appropriately. As another example, since a source device may send data to the switch for subsequent retrieval by any number of destination devices, it is desirable to associate the data with the number of destination devices that are to retrieve the data (as well as the number of destination devices capable of retrieving the data). This allows the switch to release the memory space associated with the data when all destination devices capable of retrieving the data have obtained the data from the switch. Thus, according to another aspect of the invention, the source device sends the data along with specific control information to the switch. More particularly, the source device composes one or more messages including data and control information associated with the data. The messages are then sent to the switch to enable the data and at least a portion of the control information to be stored in the memory associated with the switch. Thus, through this and other switch control messages, conveyance of data is optimized while reducing the number of pins required. Accordingly, the width of the bus required to convey the data is reduced. Moreover, since the switch control messages are sent along the radial interconnects rather than the ring interconnect, unnecessary traffic received by unrelated interfaces (e.g., along the ring interconnect) is minimized.